package com.fulihui.wgj.facade.service.region;

import com.fulihui.common.error.InvokeServiceException;
import com.fulihui.common.result.rpc.SimpleResult;
import com.fulihui.wgj.facade.dto.WxRegionDTO;
import com.fulihui.wgj.facade.request.region.WxRegionQueryProvinceRequest;

import java.util.List;
import java.util.Map;

/**
 * 微信区域服务
 *
 * @author wang_wx
 * @date 2018-06-28
 */
public interface WxRegionService {

    /**
     * 获取所有的微信区域信息--用于consumer端拉取用用于初始化
     *
     * @return Map<国家-省份-城市--rid>
     */
    Map<String, String> getAllRegionMap();

    /**
     * 查询全部国家
     *
     * @return
     */
    SimpleResult<List<WxRegionDTO>> queryAllCountry();

    /**
     * 查询省份
     *
     * @param request
     * @return
     * @throws InvokeServiceException
     */
    SimpleResult<List<WxRegionDTO>> queryProvince(WxRegionQueryProvinceRequest request) throws InvokeServiceException;

}
